package com.jiantong.work.service;

import com.jiantong.work.model.QuarantineCenterHarmless;
import io.terminus.common.model.Paging;
import io.terminus.common.model.Response;

import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * Created by niufei on 2017/3/30.
 *
 */
public interface QuarantineCenterHarmlessReadService {

    /**
     * 查询 防疫中心--无害化 单据  单条
     *
     * @param id 单据id
     * @return QuarantineCenterHarmless对象
     */
    Response<QuarantineCenterHarmless> findQuarantineCenterHarmlessById(Long id);

    /**
     * @param id 主 键
     * @return 状态
     */
    Response<Map<String, Object>> findStatusById(Long id);

    /**
     * 分页查询 防疫中心--无害化 单据  -- 养殖端
     *
     * @param pageNo   页码
     * @param pageSize 每页多少条
     * @param status   参数
     * @return Paging<QuarantineCenterHarmless>
     */
    Response<Paging<QuarantineCenterHarmless>> pagingQuarantineCenterHarmless(Integer pageNo, Integer pageSize, Integer status,Long breedFactoryId);

    /**
     * 根据从日期到日期和养殖场名称查看防疫中心5项纪录的列表
     */
    Response<Paging<QuarantineCenterHarmless>> pagingQuarantineCenterHarmlessGqv(Integer pageNo, Integer pageSize, Long breedFactoryId,Integer breedType, Date fromDate, Date toDate);
    Response<Paging<QuarantineCenterHarmless>> pagingQuarantineCenterHarmlessGqv(Integer pageNo, Integer pageSize,Map map);

    /**
     * 无害化占比图
     * @param start 从日期
     * @param end 到日期
     * @param breedType 养殖种类
     * @return Map<String , Integer>
     */
    Response<Map<String , Integer>> findSumByProductType(Date start , Date end ,Integer breedType);

    /**
     * 无害化占比图(7)
     * @param breedType 养殖种类
     * @return Map<String , Object>
     */
    Response<List<Map<String , Object>>> findAWeekSumByProductType(Integer breedType);

    Response<Integer> sumQuantityHarmlessForWeb(Map<String, Object> map);

    Response<List<Map<String,Object>>> findQuarantineHarmlessInfoForWeb(Map<String, Object> map);
}